TDD implementation of Finite State Machine (FSM) with Laravel

This article describes a TDD (Test Driven Development) approach to implement a Finite State Machine (FSM) using PHP+Laravel. However, such method is general and could be used in the programming language of your choice.

State pattern implementation of finite state machine (FSM) with Laravel

In the previous article TDD IMPLEMENTATION OF FINITE STATE MACHINE (FSM) WITH LARAVEL I discussed a basic approach for implement a Finite State Machine (FSM) on a Laravel model. In this article I will further discuss the topic by applying a more engineered approach. It involves the usage of the State pattern

Design patterns in PHP: Replace Constructors with Creation Methods

This tutorial describes a TDD approach to refactor code to Replace Constructors with Creation Methods pattern. Starting from working code and some test, refactoring steps are applied to obtain cleaner code

Design patterns in PHP: Strategy

This tutorial describes a TDD approach to refactor code to Strategy pattern. Starting from working code and some test, refactoring steps are applied to obtain cleaner code

Laravel Visitor

LaravelVisitor is a Visitor Design Pattern implementation for Laravel. It allows to easily execute processing of collections of arbitrary elements, without requiring to use repeated conditionals, thus improving code abstraction.

Database-oriented Strategy configuration

This article describes a way of implementing Strategy design pattern using a database-based runtime configuration. The approach allows to dynamically (re)configure class behavior without requiring code-based rearrangements.